function initeditor() {
    var E = window.wangEditor;
    var editor = new E("#editor");
    editor.customConfig.menus = [
        'head',  // 标题
        'bold',  // 粗体
        'italic',  // 斜体
        'underline',  // 下划线
        'strikeThrough',  // 删除线
        'link',  // 插入链接
        'list',  // 列表
        'justify',  // 对齐方式
        'quote',  // 引用
        'image',  // 插入图片
        'table',  // 表格
        'code'  // 插入代码
    ];
    var dir = document.getElementsByTagName('h2')[0].innerHTML;
    editor.customConfig.uploadImgServer = '/post/post_review/image/upload/' + dir;
    editor.customConfig.uploadImgMaxSize = 3 * 1024 * 1024;
    editor.customConfig.uploadImgMaxLength = 15;
    editor.customConfig.uploadFileName = 'imgFile';
    // 关闭粘贴样式的过滤
    editor.customConfig.pasteFilterStyle = false;
    editor.customConfig.linkImgCallback = function (url) {
        console.log(url) // url 即插入图片的地址
    };
    editor.customConfig.linkImgCheck = function (src) {
        console.log(src); // 图片的链接

        return true // 返回 true 表示校验成功
        // return '验证失败' // 返回字符串，即校验失败的提示信息
    };

    editor.customConfig.uploadImgHooks = {
        before: function (xhr, editor, files) {
        },
        success: function (xhr, editor, result) {
            if (result.error === 0) {
                var data = result.data;
                console.log(data[0]);
                editor.txt.append('<img src="' + data[0] + '"' + ' alt="##" >');
            }
        },
        fail: function (xhr, editor, result) {
            alert('fail')
        },
        error: function (xhr, editor) {
            alert('error')
        },
        timeout: function (xhr, editor) {
            alert('timeout')
        },
        customInsert: function (insertImg, result, editor) {
            // 图片上传并返回结果，自定义插入图片的事件（而不是编辑器自动插入图片！！！）
            // insertImg 是插入图片的函数，editor 是编辑器对象，result 是服务器端返回的结果

            // 举例：假如上传图片成功后，服务器端返回的是 {url:'....'} 这种格式，即可这样插入图片：
            var url = result.url;
            insertImg(url);
            // result 必须是一个 JSON 格式字符串！！！否则报错
        }
    };
    editor.customConfig.linkCheck = function (text, link) {
        console.log(text); // 插入的文字
        console.log(link); // 插入的链接

        return true // 返回 true 表示校验成功
        // return '验证失败' // 返回字符串，即校验失败的提示信息
    };
    editor.customConfig.zIndex = 100;
    editor.create();
    // todo: 随意加入图片
    document.getElementById("publish-review").addEventListener("click", function () {
        var mid = document.getElementsByClassName('movie-id')[0].innerHTML;
        var html = editor.txt.html();
        var title = document.getElementById('review-title').value;
        if (title.length <= 0) {
            var alt = document.getElementsByClassName("alert-warning");
            alt[0].lastElementChild.innerHTML = "标题不能为空";
            alt[0].setAttribute(
                "style", "display:block");
            return false
        }
        if (html.length <= 100 || html >= 700) {
            var alt2 = document.getElementsByClassName("alert-warning")[0];
            alt2.lastElementChild.innerHTML = "警告! 字数太短了，，至少100字。\n";
            alt2.setAttribute(
                "style", "display:block");
            return false
        }
        $.ajax({
            type: 'POST',
            url: '/post/post_review/movie-' + mid + '/',
            data: {'mid': mid, 'body': html, 'title': title},
            dataType: 'json',
            success: function (review) {
                window.location.href = "/post/review_info/" + review.id + "/"
            },
            fail: function () {
                alert('fail..');
            }
        })
    }, false);

}

initeditor();